﻿using System;
namespace Producers.Etoimik.Xtee.Riik.Ee.Producer.Etoimik {
    
    
    public partial class KohustiseTeavitus : global::Producers.Etoimik.Xtee.Riik.Ee.Producer.Etoimik.StandardTeavitus, global::Producers.Etoimik.Xtee.Riik.Ee.Producer.Etoimik.IKohustiseTeavitus {
        
        private global::Producers.Etoimik.Xtee.Riik.Ee.Producer.Etoimik.IKohustis @__kohustis;
        
        private System.Int64? @__kohustiseObjektID;
        
        private System.Int64? @__kohustiseVersID;
        
        public KohustiseTeavitus() {
        }
        
        /// <summary>
        /// All parameters
        /// </summary>
        public KohustiseTeavitus(global::Producers.Etoimik.Xtee.Riik.Ee.Producer.Etoimik.IKohustis @kohustis, System.Int64? @kohustiseObjektID, System.Int64? @kohustiseVersID, System.Int64? @objektID, System.DateTime? @algusKP, System.Int64? @teavitamiseEesmarkKL, System.Int64? @isikObjektID, string @isikCSV, System.Int64? @asutusObjektID, string @asutusCSV, System.Collections.Generic.List<global::Producers.Etoimik.Xtee.Riik.Ee.Producer.Etoimik.IMenetlus> @menetlused) : 
                base(@objektID, @algusKP, @teavitamiseEesmarkKL, @isikObjektID, @isikCSV, @asutusObjektID, @asutusCSV, @menetlused) {
            this.@__kohustis = @kohustis;
            this.@__kohustiseObjektID = @kohustiseObjektID;
            this.@__kohustiseVersID = @kohustiseVersID;
        }
        
        /// <summary>
        /// Copy Constructor
        /// </summary>
        protected KohustiseTeavitus(IKohustiseTeavitus @kohustiseTeavitus) : 
                base(@kohustiseTeavitus.ObjektID, @kohustiseTeavitus.AlgusKP, @kohustiseTeavitus.TeavitamiseEesmarkKL, @kohustiseTeavitus.IsikObjektID, @kohustiseTeavitus.IsikCSV, @kohustiseTeavitus.AsutusObjektID, @kohustiseTeavitus.AsutusCSV, @kohustiseTeavitus.Menetlused) {
            this.@__kohustis = @kohustiseTeavitus.Kohustis;
            this.@__kohustiseObjektID = @kohustiseTeavitus.KohustiseObjektID;
            this.@__kohustiseVersID = @kohustiseTeavitus.KohustiseVersID;
        }
        
        /// <summary>
        /// Copy Constructor
        /// </summary>
        public KohustiseTeavitus(IStandardTeavitus @standardTeavitus) : 
                base(@standardTeavitus) {
        }
        
        public virtual global::Producers.Etoimik.Xtee.Riik.Ee.Producer.Etoimik.IKohustis Kohustis {
            get {
                return this.@__kohustis;
            }
            set {
                this.@__kohustis = value;
            }
        }
        
        public virtual System.Int64? KohustiseObjektID {
            get {
                return this.@__kohustiseObjektID;
            }
            set {
                this.@__kohustiseObjektID = value;
            }
        }
        
        public virtual System.Int64? KohustiseVersID {
            get {
                return this.@__kohustiseVersID;
            }
            set {
                this.@__kohustiseVersID = value;
            }
        }
    }
}
